<?php

namespace app\common\model;

/**
 * 用户充值 模型
 * Class UserRecharge
 * @package app\common\model
 */
class UserRecharge extends Base
{

    protected $createTime = 'create_time';
//    protected $updateTime = 'last_login_time';

//    protected $insert = array('status' => 1, 'reg_time');

    protected $type = array(
        'uid' => 'integer'
    );


    public $types = [
        1 => '系统充值',
        2 => '用户充值'
    ];

    /**
     * 充值方式
     * @var array
     */
    public $way = [
        1 => '微信',
        2 => '支付宝',
        3 => '银行转账'
    ];

    /**
     * 状态
     * @var array
     */
    public $status = [
        1 => '充值成功',
        2 => '充值失败',
        3 => '充值未完成'
    ];

    /**
     * 添加字段
     * @var array
     */
    public $keyList = [

        array('name' => 'uid', 'title' => '用户ID', 'type' => 'text', 'help' => ''),
        array('name' => 'phone', 'title' => '手机号', 'type' => 'text', 'help' => ''),

        array('name' => 'money', 'title' => '充值金额', 'type' => 'text', 'help' => ''),
        array('name' => 'fee', 'title' => '充值手续费', 'type' => 'text', 'help' => ''),

        array('name' => 'way', 'title' => '充值来源', 'type' => 'select', 'help' => '', 'option' => ''),
        array('name' => 'status', 'title' => '充值状态', 'type' => 'select', 'help' => '', 'option' => ''),

    ];

    /**
     * 初始化
     */
    public function initialize()
    {
        parent::initialize();
        foreach ($this->keyList as $key => $value) {

            if ($value['name'] == 'status') {
                $value['option'] = $this->status;
            }
            if ($value['name'] == 'way') {
                $value['option'] = $this->way;
            }

            $this->keyList[$key] = $value;
        }
    }


    public function getTypeNameAttr($key, $value)
    {
        return isset($this->types[$value['type']]) ? $this->types[$value['type']] : '未知';
    }

    public function getWayNameAttr($key, $value)
    {
        return isset($this->way[$value['way']]) ? $this->way[$value['way']] : '未知';
    }

    public function getStatusNameAttr($key, $value)
    {
        return isset($this->status[$value['status']]) ? $this->status[$value['status']] : '未知';
    }

//    public $editfield = array(
//        array('name' => 'uid', 'type' => 'hidden'),
//        array('name' => 'username', 'title' => '用户名', 'type' => 'readonly', 'help' => ''),
//        array('name' => 'nickname', 'title' => '昵称', 'type' => 'text', 'help' => ''),
//        array('name' => 'password', 'title' => '密码', 'type' => 'password', 'help' => '为空时则不修改'),
//        array('name' => 'sex', 'title' => '性别', 'type' => 'select', 'option' => array('0' => '保密', '1' => '男', '2' => '女'), 'help' => ''),
//        array('name' => 'email', 'title' => '邮箱', 'type' => 'text', 'help' => '用户邮箱，用于找回密码等安全操作'),
//        array('name' => 'qq', 'title' => 'QQ', 'type' => 'text', 'help' => ''),
//        array('name' => 'score', 'title' => '用户积分', 'type' => 'text', 'help' => ''),
//        array('name' => 'signature', 'title' => '用户签名', 'type' => 'textarea', 'help' => ''),
//        array('name' => 'status', 'title' => '状态', 'type' => 'select', 'option' => array('0' => '禁用', '1' => '启用'), 'help' => ''),
//    );
//
//    public $addfield = array(
//        array('name' => 'username', 'title' => '用户名', 'type' => 'text', 'help' => '用户名会作为默认的昵称'),
//        array('name' => 'password', 'title' => '密码', 'type' => 'password', 'help' => '用户密码不能少于6位'),
//        array('name' => 'repassword', 'title' => '确认密码', 'type' => 'password', 'help' => '确认密码'),
//        array('name' => 'email', 'title' => '邮箱', 'type' => 'text', 'help' => '用户邮箱，用于找回密码等安全操作'),
//    );
//
//    public $useredit = array(
//        array('name' => 'uid', 'type' => 'hidden'),
//        array('name' => 'nickname', 'title' => '昵称', 'type' => 'text', 'help' => ''),
//        array('name' => 'sex', 'title' => '性别', 'type' => 'select', 'option' => array('0' => '保密', '1' => '男', '2' => '女'), 'help' => ''),
//        array('name' => 'email', 'title' => '邮箱', 'type' => 'text', 'help' => '用户邮箱，用于找回密码等安全操作'),
//        array('name' => 'mobile', 'title' => '联系电话', 'type' => 'text', 'help' => ''),
//        array('name' => 'qq', 'title' => 'QQ', 'type' => 'text', 'help' => ''),
//        array('name' => 'signature', 'title' => '用户签名', 'type' => 'textarea', 'help' => ''),
//    );
//
//    public $userextend = array(
//        array('name' => 'company', 'title' => '单位名称', 'type' => 'text', 'help' => ''),
//        array('name' => 'company_addr', 'title' => '单位地址', 'type' => 'text', 'help' => ''),
//        array('name' => 'company_contact', 'title' => '单位联系人', 'type' => 'text', 'help' => ''),
//        array('name' => 'company_zip', 'title' => '单位邮编', 'type' => 'text', 'help' => ''),
//        array('name' => 'company_depart', 'title' => '所属部门', 'type' => 'text', 'help' => ''),
//        array('name' => 'company_post', 'title' => '所属职务', 'type' => 'text', 'help' => ''),
//        array('name' => 'company_type', 'title' => '单位类型', 'type' => 'select', 'option' => '', 'help' => ''),
//    );

//    protected function setStatusAttr($value)
//    {
//        return 1;
//    }

//    protected function setPasswordAttr($value, $data)
//    {
//        return md5($value . $data['salt']);
//    }
//
//    protected function getGroupListAttr($value, $data)
//    {
//        $sql = db('AuthGroupAccess')->where('uid', $data['uid'])->fetchSql(true)->column('group_id');
//        return db('AuthGroup')->where('id in (' . $sql . ')')->column('title', 'id');
//    }


}